dcmotor30 2.2.0
Loading...
Searching...
No Matches
dcmotor30.h File Reference

This file contains API for DC Motor 30 Click Driver. More...

#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_i2c_master.h"
#include "drv_analog_in.h"

Go to the source code of this file.

Data Structures

struct  dcmotor30_t
 DC Motor 30 Click context object. More...
struct  dcmotor30_cfg_t
 DC Motor 30 Click configuration object. More...

Macros

#define DCMOTOR30_REG_FAULT_STATUS   0x00
 DC Motor 30 register map.
#define DCMOTOR30_REG_RC_STATUS1   0x01
#define DCMOTOR30_REG_RC_STATUS2   0x02
#define DCMOTOR30_REG_RC_STATUS3   0x03
#define DCMOTOR30_REG_STATUS1   0x04
#define DCMOTOR30_REG_STATUS2   0x05
#define DCMOTOR30_REG_STATUS3   0x06
#define DCMOTOR30_REG_STATUS4   0x07
#define DCMOTOR30_REG_STATUS5   0x08
#define DCMOTOR30_REG_CONFIG0   0x09
#define DCMOTOR30_REG_CONFIG1   0x0A
#define DCMOTOR30_REG_CONFIG2   0x0B
#define DCMOTOR30_REG_CONFIG3   0x0C
#define DCMOTOR30_REG_CONFIG4   0x0D
#define DCMOTOR30_REG_CTRL0   0x0E
#define DCMOTOR30_REG_CTRL1   0x0F
#define DCMOTOR30_REG_CTRL2   0x10
#define DCMOTOR30_REG_RC_CTRL0   0x11
#define DCMOTOR30_REG_RC_CTRL1   0x12
#define DCMOTOR30_REG_RC_CTRL2   0x13
#define DCMOTOR30_REG_RC_CTRL3   0x14
#define DCMOTOR30_REG_RC_CTRL4   0x15
#define DCMOTOR30_REG_RC_CTRL5   0x16
#define DCMOTOR30_REG_RC_CTRL6   0x17
#define DCMOTOR30_REG_RC_CTRL7   0x18
#define DCMOTOR30_REG_RC_CTRL8   0x19
#define DCMOTOR30_FAULT_STATUS_FAULT   0x80
 DC Motor 30 FAULT_STATUS register setting.
#define DCMOTOR30_FAULT_STATUS_STALL   0x20
#define DCMOTOR30_FAULT_STATUS_OCP   0x10
#define DCMOTOR30_FAULT_STATUS_OVP   0x08
#define DCMOTOR30_FAULT_STATUS_TSD   0x04
#define DCMOTOR30_FAULT_STATUS_NPOR   0x02
#define DCMOTOR30_CONFIG0_EN_OUT   0x80
 DC Motor 30 CONFIG0 register setting.
#define DCMOTOR30_CONFIG0_EN_OVP   0x40
#define DCMOTOR30_CONFIG0_EN_STALL   0x20
#define DCMOTOR30_CONFIG0_VSNS_SEL_AN   0x00
#define DCMOTOR30_CONFIG0_VSNS_SEL_DIG   0x10
#define DCMOTOR30_CONFIG0_VSNS_SEL_MASK   0x10
#define DCMOTOR30_CONFIG0_CLR_FLT   0x02
#define DCMOTOR30_CONFIG0_DUTY_CTRL_EN   0x01
#define DCMOTOR30_RIPROPI_V_TO_MA   1.5
 DC Motor 30 current calculation setting.
#define DCMOTOR30_SCALING_FACTOR   1.5
#define DCMOTOR30_NUM_CONVERSIONS   200
 DC Motor 30 default ADC samples number for averaging.
#define DCMOTOR30_VREF_3V3   3.3
 DC Motor 30 ADC setting.
#define DCMOTOR30_VREF_5V   5.0
#define DCMOTOR30_VREF_DEFAULT   DCMOTOR30_VREF_3V3
#define DCMOTOR30_TIMEOUT_MS   2000
 DC Motor 30 timeout setting.
#define DCMOTOR30_MOTOR_COAST   0
 DC Motor 30 motor PWM control mode setting.
#define DCMOTOR30_MOTOR_FORWARD   1
#define DCMOTOR30_MOTOR_REVERSE   2
#define DCMOTOR30_MOTOR_BRAKE   3
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_00   0x30
 DC Motor 30 device address setting.
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_0Z   0x31
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_01   0x32
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_Z0   0x33
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_ZZ   0x34
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_Z1   0x35
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_10   0x36
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_1Z   0x37
#define DCMOTOR30_DEVICE_ADDRESS_A1A0_11   0x38
#define DCMOTOR30_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.

Enumerations

enum  dcmotor30_return_value_t { DCMOTOR30_OK = 0 , DCMOTOR30_ERROR = -1 }
 DC Motor 30 Click return value data. More...

Functions

void dcmotor30_cfg_setup (dcmotor30_cfg_t *cfg)
 DC Motor 30 configuration object setup function.
err_t dcmotor30_init (dcmotor30_t *ctx, dcmotor30_cfg_t *cfg)
 DC Motor 30 initialization function.
err_t dcmotor30_default_cfg (dcmotor30_t *ctx)
 DC Motor 30 default configuration function.
err_t dcmotor30_write_reg (dcmotor30_t *ctx, uint8_t reg, uint8_t data_in)
 DC Motor 30 write reg function.
err_t dcmotor30_read_reg (dcmotor30_t *ctx, uint8_t reg, uint8_t *data_out)
 DC Motor 30 read reg function.
err_t dcmotor30_read_adc_raw (dcmotor30_t *ctx, uint16_t *data_out)
 DC Motor 30 read raw IPROPI ADC value function.
err_t dcmotor30_read_adc_volt (dcmotor30_t *ctx, float *data_out)
 DC Motor 30 read IPROPI pin voltage level function.
err_t dcmotor30_read_adc_volt_avg (dcmotor30_t *ctx, uint16_t num_conv, float *volt_avg)
 DC Motor 30 read IPROPI pin voltage level average function.
err_t dcmotor30_set_adc_vref (dcmotor30_t *ctx, float vref)
 DC Motor 30 set vref function.
void dcmotor30_set_in1_pin (dcmotor30_t *ctx)
 DC Motor 30 set IN1 pin function.
void dcmotor30_clear_in1_pin (dcmotor30_t *ctx)
 DC Motor 30 clear IN1 pin function.
void dcmotor30_set_in2_pin (dcmotor30_t *ctx)
 DC Motor 30 set IN2 pin function.
void dcmotor30_clear_in2_pin (dcmotor30_t *ctx)
 DC Motor 30 clear IN2 pin function.
uint8_t dcmotor30_get_fault_pin (dcmotor30_t *ctx)
 DC Motor 30 get FAULT pin function.
void dcmotor30_drive_motor (dcmotor30_t *ctx, uint8_t state)
 DC Motor 30 drive motor function.
err_t dcmotor30_clear_fault (dcmotor30_t *ctx)
 DC Motor 30 clear fault function.
err_t dcmotor30_calib_offset (dcmotor30_t *ctx)
 DC Motor 30 calib offset function.
err_t dcmotor30_get_out_current (dcmotor30_t *ctx, float *current)
 DC Motor 30 get out current function.

Detailed Description

This file contains API for DC Motor 30 Click Driver.

Enumeration Type Documentation

◆ dcmotor30_return_value_t

DC Motor 30 Click return value data.

Predefined enum values for driver return values.

Enumerator
DCMOTOR30_OK 
DCMOTOR30_ERROR